"""
3.多窗口操作.py
窗口:  handle  句柄     每个窗口的id    桌面应用程序开发 qq , 视频  MFC
返回当前窗口的句柄,  driver.current_window_handle
返回所有窗口的句柄:  driver.window_handles   返回是一个列表
切换窗口:          driver.switch_to_window(句柄)
关闭窗口:          driver.close()
遍历 + 筛选
"""
from time import sleep
from selenium import webdriver
from selenium.webdriver.common.by import By

driver = webdriver.Chrome()
# sleep(2)
# driver.minimize_window()
sleep(2)
driver.maximize_window()
sleep(2)
#打开一个窗口
driver.get("http://www.baidu.com")
sleep(2)
#保存第一个窗口的 句柄
h = driver.current_window_handle
t = driver.find_element(By.LINK_TEXT,"新闻")
# #动作链表示可以连续执行的动作,每个动作用 '.'进行连接,最后使用perform()进行结尾
t.click()
# 打开新闻页面
#获取所有窗口句柄
hs = driver.window_handles  #
for aa in hs:
    if aa != h:
        driver.switch_to.window(aa)
driver.find_element(By.PARTIAL_LINK_TEXT,"兄弟").click()
sleep(5)
# 获取所有窗口
hs = driver.window_handles  #
for aa in hs:
    if aa.title() == "第一观察｜这场会见中，习近平主席两次提及“定力”":
        driver.switch_to.window(aa)
driver.find_element(By.PARTIAL_LINK_TEXT,"兄弟").click()
sleep(5)
driver.quit()